package entity.maintenance;

import com.baomidou.mybatisplus.annotation.IdType;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.Version;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

/**
 * <p>
 * 保养工单
 * </p>
 *
 * @author beisheng
 * @since 2023-05-18
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
public class MaintenanceWorkOrder implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 主键
     */
    @TableId(value = "order_id", type = IdType.AUTO)
    private Integer orderId;

    /**
     * 关联设备id
     */
    private Integer equipmentId;

    /**
     * 保养工单单号
     */
    private String orderNumber;

    /**
     * 保养工单主题
     */
    private String orderName;

    /**
     * 工单状态
     */
    private Integer orderStatus;

    /**
     * 工单类型
     */
    private String workTyep;

    /**
     * 关联保养班组
     */
    private Integer orderGuoup;

    /**
     * 保养开始时间
     */
    private Date startTime;

    /**
     * 保养结束时间
     */
    private Date endTime;

    /**
     * 保养费用
     */
    private Double upkeepCost;

    /**
     * 保养总用时
     */
    @TableField("Maintenance_time")
    private String maintenanceTime;

    /**
     * 工作描述
     */
    private String workSpecification;

    /**
     * 工作量
     */
    private Integer workload;

    /**
     * 保养项目
     */
    @TableField("Maintenance_project_id")
    private Integer maintenanceProjectId;

    /**
     * 是否更换备件
     */
    @TableField("Replace_spare_parts")
    private Integer replaceSpareParts;

    /**
     * 更换备件（关联更换备件明细）
     */
    @TableField("Spare_parts_detail")
    private Integer sparePartsDetail;

    /**
     * 保养图片(上传图片)
     */
    private Integer uploadPictures;

    /**
     * 关联文档
     */
    @TableField("Upload_document")
    private Integer uploadDocument;

    /**
     * 创建时间
     */
    @TableField(fill = FieldFill.INSERT)
    private Date createTime;

    /**
     * 修改时间
     */
    @TableField(fill = FieldFill.INSERT_UPDATE)
    private Date updateTime;

    /**
     * 删除标识
     */
    private Integer deleteFlag;


}
